WatchDog一款基于SpringBoot+Vue的轻量级管理系统快速开发脚手架

20,562次阅读
32 条评论

共计 1482 个字符,预计需要花费 4 分钟才能阅读完成。

介绍

watchdog-framework 基于 SpringBoot+Shiro+Mybatis+Mybatis-Plus+HikariCP+Redis+Vue+iView 等开发的轻量级管理系统快速开发脚手架,拥有角色、用户、资源管理、数据同步更新等功能,并且此项目会进行持续更新升级,欢迎使用。

界面展示

用户管理

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

用户添加

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

角色管理

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

角色添加

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

资源管理

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

资源添加

WatchDog 一款基于 SpringBoot+Vue 的轻量级管理系统快速开发脚手架

技术选型

后端技术

技术 类型 版本 官网
Spring Boot 容器 1.5.12.RELEASE http://start.spring.io/
Mybatis-Starter ORM 框架 1.3.1 http://www.mybatis.org
Mybatis-Plus ORM 框架 1.3.1 http://mp.baomidou.com/
Maven 项目构建管理 4.0.0 http://maven.apache.org
Apache Shiro 安全框架 1.3.2 http://shiro.apache.org
Lombok 工具 1.16.20 https://www.projectlombok.org/
HikariCP 数据库连接池 2.7.8 http://brettwooldridge.github.io/HikariCP/
Shiro-Redis shiro 缓存工具 2.8.24 https://github.com/alexxiyang/shiro-redis
Springfox-Swagger2 api 文档工具 2.7.0 https://github.com/springfox/springfox
jedis redis 管理 2.9.0 https://github.com/xetorthio/jedis
jwt 身份认证 3.2.0 https://jwt.io/

前端技术

技术 类型 版本 官网
Vue 前端渐进式框架 2.5.13 https://cn.vuejs.org/
Vue-Router 前端路由 3.0.1 https://router.vuejs.org/
Vuex 前端状态管理 3.0.1 https://vuex.vuejs.org/
Axios HTTP 库 0.18.0 https://github.com/axios/axios
iView UI 框架 2.8.0 https://www.iviewui.com/
dayjs JS 时间操作库 1.5.14 https://github.com/xx45/dayjs
String-Format 字符串格式化 1.0.0 https://github.com/davidchambers/string-format
Vue-table-with-tree-grid iview- 树表格 0.2.4 https://github.com/MisterTaki/vue-table-with-tree-grid
js-md5 js-md5 库 0.7.3 https://github.com/emn178/js-md5

使用方法

请参考项目地址最新说明

项目地址

后端

Github:https://github.com/watchdog-framework/watchdog-framework

码云:https://gitee.com/licoy/watchdog-framework

前端

Github:https://github.com/watchdog-framework/watchdog-framework-web

码云:https://gitee.com/licoy/watchdog-framework-web

讨论

QQ 群:已解散,请使用 issue 进行讨论

开源协议

MIT

正文完
使用官方微信小程序体验更多功能
post-qrcode
 18
憧憬Licoy
版权声明:本站原创文章,由 憧憬Licoy 于2018-06-13发表,共计1482字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(32 条评论)
mm 评论达人 LV.1
2021-01-27 17:26:26 回复

代码写着写着,登陆的时候 String authorization = request.getHeader(“Authorization”);这个就为null了,我也很奇怪,什么都没改啊

 Windows  Chrome  中国青海省西宁市电信
    憧憬Licoy 博主
    2021-01-28 13:54:40 回复

    @mm 这个要先看看前端post请求是否带有Authorization请求头

     Macintosh  Chrome
      mm 评论达人 LV.1
      2021-01-31 23:06:49 回复

      @憧憬Licoy 我增加新的菜单后,取消掉其中某个权限后,这个菜单的父级菜单就不显示了,不知道是菜单家的有问题,还是什么原因,我是模仿系统设置添加的

       Windows  Chrome  中国青海省西宁市联通
        憧憬Licoy 博主
        2021-02-01 08:57:22 回复

        @mm 可能那个权限会对菜单有影响,而且这个框架也写了很长时间现在已经没有维护了,望知悉。

         Macintosh  Chrome
xyq 评论达人 LV.1
2019-09-04 16:50:18 回复

楼主,我是新手我把你的前后端都下载了也按照你的介绍解压这些了,我想问问是直接在IDEA里面开启WatchDogApplication,然后页面直接输入localhost:1000/跟controller里面的地址吗,为什么页面报404呢

 Windows  Chrome  中国陕西省西安市电信
    憧憬Licoy 博主
    2019-09-13 07:56:03 回复

    @xyq 启动前端工程,后端工程只是接口

     Macintosh  Chrome
溺亡鱼 评论达人 LV.1
2019-08-22 15:55:55 回复

想问下我使用admin用户登录时,所有权限军没有。权限设置时数据库字段定义还是哪里?密码加密时什么方式?

 Windows  Firefox  中国安徽省合肥市电信
    憧憬Licoy 博主
    2019-08-28 09:38:00 回复

    @溺亡鱼 所有权限都没有不可能吧,密码加密方式是MD5(用户名+密码)

     Windows  Chrome
Holy 评论达人 LV.1
2019-07-15 09:48:14 回复

启动时有个警告,
warning in ./src/libs/axios-cfg.js
“export ‘router’ was not found in ‘@/router/index’
输入帐号密码后 请求服务器失败 http://localhost:1003/account/sign-in 404 (Not Found)
不知道这个问题怎么解决,望指导下。
顺便问下登录用户名和密码

 Windows  Chrome  中国江苏省南京市电信
    憧憬Licoy 博主
    2019-07-15 13:14:03 回复

    @Holy 你这个怎么看着像服务未启动一样呢

     Macintosh  Chrome
      Holy 评论达人 LV.1
      2019-07-16 07:27:12 回复

      @憧憬Licoy 项目启动了,并且到了登录页面,但是输入帐号密码点击登录的时候 报404

       Windows  Chrome  中国上海上海市移动
小八 评论达人 LV.1
2019-04-06 10:56:41 回复

博主 你前端部分 里面的build config这两个文件夹 怎么没有 是删了吗?不是应该有用的吗?

 Windows  Chrome  中国内蒙古呼和浩特市联通
    憧憬Licoy 博主
    2019-04-10 08:57:52 回复

    @小八 这个是vue-cli 3.0,所以是没有build与config文件夹的

     Windows  Chrome
      小八 评论达人 LV.1
      2019-04-12 18:02:28 回复

      @憧憬Licoy 与后端的交互 就是根目录下那个vue.config.js吗?

       Windows  Chrome  中国北京北京市联通
        憧憬Licoy 博主
        2019-04-19 10:33:30 回复

        @小八 No,那个只是Vue的配置文件,从文件名你应该就看出来了

         Macintosh  Chrome
Akkariin Meiko 评论达人 LV.1
2018-10-31 05:47:02 回复

V2EX 来的,支持一下博主。
另外 Watch_Dogs 也是个游戏,挺好玩的 233

 Windows  Chrome  中国广东省深圳市电信
优站盒子 评论达人 LV.1
2018-10-02 17:53:55 回复

java的博客很那应用起来,大部分的虚拟主机都支持php,使用java的话估计要上vps了

 Windows  Chrome  中国北京北京市联通
闲鱼 评论达人 LV.2
2018-06-25 17:49:54 回复

可以啊,这个用户管理很不错的样子

 Windows  Chrome  中国湖南省常德市移动
    憧憬Licoy 博主
    2018-06-25 18:39:41 回复

    @闲鱼 是挺不错的,已经在我司的项目中用到了

     Windows  Chrome
      sun_liber 评论达人 LV.1
      2018-09-10 10:01:19 回复

      @憧憬Licoy 楼主 ,楼主,我想问问,后台为什么要考虑所有的请求都使用POST的方式,是为了@RequestBody 方便进行对象序列化吗?但是这样的话,就没法体现Rest风格的API设计,这样对于前后端分离,前端并不能清晰根据API设计来进行联合调试?

       Windows  Chrome  中国江苏省南京市联通
        憧憬Licoy 博主
        2018-09-10 10:03:31 回复

        @sun_liber 对于大多数公司来说一般都是使用的POST和GET,主要是为了方便APP端的请求,当然您也可以使用更多的请求方式例如PUT/DELETE等,整体设计根据自己的项目需求而定即可!

         Windows  Chrome
      sun_liber 评论达人 LV.1
      2018-09-10 10:36:30 回复

      @憧憬Licoy 嗯,是这样,就是有这样一个考虑 ,查询一般是GET请求,如果引入了DTO,我就可能需要在Controller层自己进行DTO的组合,但是如果用POST请求,就可以直接@RequestBody 得到DTO了,
      让我困惑的就是一个查询语句却是POST请求,虽然后台代码好写了,但是理解上面总是感觉过不去

      @RequestMapping (value = "/configs", method = RequestMethod.GET)
          public MResult get(@RequestParam (value = "type", defaultValue = "default") String type,
                             @RequestParam (value = "value", required = false) String value,
                             @RequestParam (value = "page", defaultValue = "1") int page,
                             @RequestParam (value = "asc", defaultValue = "false") Boolean asc) {
              FindConfigDTO findConfigDTO = new FindConfigDTO();
              findConfigDTO.setType(type);
              findConfigDTO.setValue(value);
              findConfigDTO.setAsc(asc);
              findConfigDTO.setPage(page);
              return ResultUtil.success(configService.findByDTO(findConfigDTO));
          }
       Windows  Chrome  中国江苏省南京市联通
        憧憬Licoy 博主
        2018-09-10 10:41:10 回复

        @sun_liber 不用的,如果是GET请求的话,你直接将你的DTO放在参数内,然后Spring会自动组装KEY值和DTO内属性名一样的参数,比如:

        @GetMapping (value = "/configs")
        public MResult get(FindConfigDTO findConfigDTO ) {
            return ResultUtil.success(configService.findByDTO(findConfigDTO));
        }
         Windows  Chrome
        sun_liber 评论达人 LV.1
        2018-09-10 10:44:08 回复

        @sun_liber 哦哦 。万分感谢!!楼主,我都不知道这个功能!!
        哈哈 ,自学的JavaWeb,对这些都不是很了解,也只是老师的项目需要,而使用SpringBoot。
        感谢!!

         Windows  Chrome  中国江苏省南京市联通
        憧憬Licoy 博主
        2018-09-10 10:45:09 回复

        @sun_liber 遇到问题善用搜索引擎即可。

         Windows  Chrome
广州网站建设 评论达人 LV.2
2018-06-19 17:00:23 回复

已阅,沙发

 Windows  Chrome  中国广东省广州市电信